package com.esunny.resourcevisualization.dao;

import com.esunny.resourcevisualization.domain.entity.User;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

/**
 * @version 1.0.0.0
 * @InterfaceName UserDao
 * @Description 用户操作user表接口
 * @Author baochencong
 * @Date 2020/10/9 16:41
 */
@Mapper
public interface UserDao {

    /**
     * 添加用户
     *
     * @param user 用户信息
     * @return 添加结果
     */
    boolean addUser(User user);

    /**
     * 更新用户信息
     *
     * @param user 用户信息
     * @return 更新结果
     */
    boolean updateUser(User user);

    /**
     * 通过用户名获取用户信息
     *
     * @param username 用户名
     * @return 用户信息
     */
    User getUserByName(String username);

    /**
     * 通过真实姓名获取用户信息
     *
     * @param realName 真实姓名
     * @return 用户信息
     */
    User getUserByRealName(String realName);

    /**
     * 获取用户列表
     *
     * @return 全部用户列表
     */
    List<User> getUserList();

    /**
     * 通过用户组名获取用户列表
     *
     * @param userGroupName 用户组名
     * @return 用户列表
     */
    List<User> getUserListByGroupName(String userGroupName);

}
